package com.ztgf.message.model.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.ztgf.common.constant.Result;
import com.ztgf.message.model.bo.MessageNoticeBO;
import com.ztgf.message.model.bo.MessageNoticeSaveBO;
import com.ztgf.message.model.dto.MessageNoticeDTO;

import java.util.List;

/**
 * 通知消息服务
 *
 * @author YUE
 * @Date 2020-05-28 16:26:24
 */
public interface IMessageNoticeService extends IService<MessageNoticeDTO> {
    void updateAllMessageNoticeNotTop();

    boolean add(MessageNoticeSaveBO saveBO, String sessionId);

    boolean deletePhById(Long id);

    boolean recoverPhById(Long id);

    List<MessageNoticeDTO> getBySelectNoticeInfoNoPage(MessageNoticeBO messageNoticeBO);

    Page<MessageNoticeDTO> getBySelectNoticeInfoPage(MessageNoticeBO messageNoticeBO);

    void updateMessageDeleteByIds(List<String> ids);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改排序号
     * @Date : 2021.02.23 10:34
     * @Param : [id, sort]
     **/
    Result<?> updateSort(Long id, Integer sort);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改是否置顶
     * @Date : 2021.03.08 11:04
     * @Param : [id]
     **/
    Result<?> updateIsTop(Long id);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改是否热门
     * @Date : 2021.03.08 11:19
     * @Param : [id]
     **/
    Result<?> updateIsHot(Long id);

    /**
     * @return : boolean
     * @Author :chenyu.wang
     * @Description : 修改显示，隐藏
     * @Date : 2021.03.18 10:42
     * @Param : [id]
     **/
    boolean updateHideFromView(Long id);
}
